package com.linkgie.galaxyframework.crypto;

/**
 * 非对称密钥生成器；
 * 
 * @author liso
 *
 */
public interface AsymmetricKeyGenerator {

	/**
	 * 生成随机密钥对；
	 * 
	 * @return
	 */
	CryptoKeypair generateKeypair();

	/**
	 * 根据种子生成密钥对；
	 * 
	 * @param seed 种子；
	 * @return
	 */
	CryptoKeypair generateKeypair(byte[] seed);

	/**
	 * 根据私钥导出公钥；
	 * 
	 * @param privateKey
	 * @return
	 */
	PublicKey generatePublicKey(PrivateKey privateKey);
}
